package com.ids.transfer;

import java.util.HashMap;

/**
 * Param Class,used for save init parameter information 
 * and other information.
 */
public class ExtraParam {
	
	/**
	 * 数据源
	 */
	public static final String SRCDSC="srcdatasource";
	/**
	 * 目标数据源
	 */
	public static final String DESDSC="desdatasource";
	/**
	 * 所有Items,已初始化     
	 */
	public static final String ITEMS="items";
	/**
	 * 任务配置信息
	 */
	public static final String TASKCONFIG="taskconfig";
	
	/**
	 * 所有task
	 */
	public static final String TASKS="tasks";
	/**
	 * 定义容器存储
	 */
	private HashMap param = new HashMap();

	/**
	 * 增加参数
	 * @param name name of String
	 * @param value value of String
	 */
	public void addParam(String name, String value) {
		param.put(name, value);
	}

	/**
	 * 增加参数
	 * @param name
	 * @param obj value of Object
	 */
	public void addParam(String name, Object obj) {
		param.put(name, obj);
	}

	/**
	 * 增加参数
	 * @param ep ExtraParam
	 */
	public void addParam(ExtraParam ep) {
		HashMap vhm = ep.getParam();
		param.putAll(vhm);
	}

	/**
	 * 取得容器的长度
	 * @return
	 */
	public int getLength() {
		return param.size();
	}

	/**
	 * 根据KEY取得VALUE
	 * @param name
	 * @return
	 */
	public Object getValue(String name) {
		return param.get(name);
	}

	/**
	 * 取得容器
	 * @return
	 */
	public HashMap getParam() {
		return param;
	}

}